import firedrake
/home/firedrake/firedrake/lib/python3.10/site-packages/pytools/__init__.py:2428: UserWarning: unable to find git revision
warn("unable to find git revision")
/home/firedrake/firedrake/src/loopy/loopy/schedule/__init__.py:2201: UserWarning: pytools.persistent_dict 'loopy-schedule-cache-v4-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
schedule_cache = WriteOncePersistentDict(
/home/firedrake/firedrake/src/loopy/loopy/tools.py:914: UserWarning: pytools.persistent_dict 'loopy-memoize-cache-buffer_array-LoopyKeyBuilder.LoopyKeyBuilder-v0-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
transform_cache = WriteOncePersistentDict(
/home/firedrake/firedrake/src/loopy/loopy/tools.py:914: UserWarning: pytools.persistent_dict 'loopy-memoize-cache-preprocess_program-LoopyKeyBuilder.LoopyKeyBuilder-v0-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
transform_cache = WriteOncePersistentDict(
/home/firedrake/firedrake/src/loopy/loopy/codegen/__init__.py:313: UserWarning: pytools.persistent_dict 'loopy-code-gen-cache-v3-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
code_gen_cache = WriteOncePersistentDict(
/home/firedrake/firedrake/src/loopy/loopy/target/execution.py:724: UserWarning: pytools.persistent_dict 'loopy-typed-and-scheduled-cache-v1-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
typed_and_scheduled_cache = WriteOncePersistentDict(
/home/firedrake/firedrake/src/loopy/loopy/target/execution.py:732: UserWarning: pytools.persistent_dict 'loopy-invoker-cache-v10-2024.1-islpy2024.1-cgen2020.1-967461ba9c3677ee6f0334b9ee95ef0f0e51d208-v1': enabling safe_sync as default. This provides strong protection against data loss, but can be unnecessarily expensive for use cases such as caches.Pass 'safe_sync=False' if occasional data loss is tolerable. Pass 'safe_sync=True' to suppress this warning.
invoker_cache = WriteOncePersistentDict(
import viskex
Generate meshes of the unit square by dividing each edge of the square in 6 segments, using either a triangular or quadrangular mesh.
square_tria = firedrake.UnitSquareMesh(6, 6, quadrilateral=False, diagonal="right")
square_quad = firedrake.UnitSquareMesh(6, 6, quadrilateral=True, diagonal="right")
Plot the meshes.
viskex.firedrake.plot_mesh(square_tria)
viskex.firedrake.plot_mesh(square_quad)
An optional argument dim argument controls the dimension of the entities to plotted. By default, it is equal to the topological dimension. In this example, dim=2 plots cells of the mesh (i.e., triangles or quadrilaterals), dim=1 plots facets of the mesh (i.e., segments), while dim=0 plots vertices of the mesh.
viskex.firedrake.plot_mesh(square_tria, dim=2)
viskex.firedrake.plot_mesh(square_quad, dim=2)
viskex.firedrake.plot_mesh(square_tria, dim=1)
viskex.firedrake.plot_mesh(square_quad, dim=1)
viskex.firedrake.plot_mesh(square_tria, dim=0)
viskex.firedrake.plot_mesh(square_quad, dim=0)